#pragma once

#include <string>


class Buffer {
private:
    std::string buffer;

public:
    Buffer() = default;

    ~Buffer() = default;

    void reserve(unsigned length);

    size_t get_size() const;

    const std::string& get() const;

    const char *get_c_string() const;

    void set_buffer(const char *string);

    void append(const char *data);

    void append(const std::string& data);

    void clear();
};